# 框架运行的入库
import os
import datetime
import pytest
from core.CasePlugin import CasePlugin

current_date = datetime.datetime.now().strftime('%Y%m%d')
log_filename = f'logdata_{current_date}.log'

print("日志文件",log_filename)


# TODO 1，最基础的应用，自己找符合规则的测试用例
# pytest.main(["-vs"])


# TODO 2. 生成测试报告 -allure
# TODO 2.1 测试用例--生成报告所需要的数据
pytest_args = ["-s","-v","./core/ApiTestRunner.py","--capture=sys" ,# 用于显示输入调试信息，设置级别，打开实时输出
               "--clean-alluredir", # 清空alluredir 中的历史数据
               "--alluredir=allure-results", # 执行过程的数据存放到allure-results中
               "--type=yaml", # 指定文件运行类型
               "--cases=.\examples\examples-ds", # 指定文件运行路径
               "--reruns=2",
               "--reruns-delay=3"
 ]


print("run pytest:", pytest_args)
pytest.main(pytest_args,plugins=[CasePlugin()])

# TODO 2.2 基于测试产生的测试数据，生成测试报告--allure-html  ，此时只能通过Pycharm，打开index文件，有报告的数据展示，
# 单独的在文件夹下打开文件，是不会展示报告的，如何让其他人也可以打开查看？
# 在python中执行cmd 命令， allure generate -c -o 测试报告
os.system("allure generate -c -o 测试报告")

# TODO 2.3 生成allure测试报告，双击打开直接查看
from allure_combine import combine_allure
# combine_allure(测试报告的路径)
# combine_allure("./测试报告")  后面的路径名称 和第二步 中的名称一致
# 注意： allure报告必须以服务的形式打开，直接进入目录是无法打开查看数据的
combine_allure("./测试报告")





